1. Field of the Invention
This application relates to software for representing relationships between objects. More specifically, this application relates to software for building and maintaining trees that represent relationships between objects.
2. Discussion of Prior Art
There are several approaches for representing relationships between objects. One example of a system for representing relationships between objects is a tree. However, prior art trees are not convenient for use while conducting a transaction or to use in real time situations, because the information in them may not be current and updating the information they contain may be cumbersome. In this specification and in the prior art the terminology often used for trees includes terms such as “node,” borrowed from math and science terms used to label a mesh; “branches,” “roots,” and “leaves,” borrowed from the names of parts of a biological tree; and “parent,” “child,” and “sibling,” borrowed from family trees.
Trees constructed in prior art tree managers are essentially “static,” having nodes and leaves that are defined explicitly in the tree manager and saved in a database. For example, using a prior art system the organization of a bank may be provided on a page (a bank page) using a tree in which the branches are the divisions and departments of the bank. If a new division is added to the bank, called Div4 for example, the tree definition in the tree manager needs to be modified and saved, and then the user needs to go back to the bank page in order to view Div4 in the bank tree. The static trees constructed in prior art tree managers are not able to generate and/or update nodes and leaves dynamically at run-time.
In the prior art, the children nodes are handled in essentially the same manner no matter the nature of the relationship to their parent node. Similarly, nodes of different branches are handled in the same manner whether or not they are related.
Another example of a system for representing relationships between objects is a graphic tree generated by running Java™ classes on the client machine. Java™ graphic trees are not Hypertext Markup Language (HTML) trees. The performance of Java™ graphic trees is considered by some to be slow. The consumer must have the application Java classes installed on the client side. So, another problem with using graphic trees generated with Java™ is that the consumer must install the application on every client machine and then reinstall the application whenever there is an application upgrade.